pythonGuideFromZero-dataScience-0

序章

  1. 关于python;
  2. 为什么选择python来做数据科学;
  3. 准备实践环境;

千里之行,始于足下&

Python从零开始系列

关于Python

python是什么?

Python is an easy to learn, powerful programming language --引自The Python Tutorial

python 历史

20世纪80年代,荷兰大神 Guido van Rossum 开始了python 的开发。从第一个发行版本python 0.9.0 发行于1991年。

2008年,python 同时发行了python 2.6 和python 3.0 ,随后python 2和python 3 并行开发和发行。

说到这里,一个令初学者头疼的问题来了,选择哪个版本呢?
通常提倡学习python3。一些新特性会很实用。
但是python2执行起来会感觉更加流畅。

这篇教程主要以python3 为主。

python 特性

我们每学习一门编程语言,都会去关注其特性。了解编程语言的一些特性,有助于我们选择合适的技术栈。
接下来我们来看看python拥有哪些特性。

  1. 解释型编程语言。
  2. 多重泛型,例如:面向对象、函数式、命令式、过程式编程等等。
  3. 用途广泛,可以快速开发、交互式代码开发、构建大型复杂应用程序;既可以用于低级系统操作,有可以用于复杂的分析任务。
  4. 面向对象 object-oriented
  5. 高效的高级数据结构 efficient high-level data structures。
  6. 优雅的语法 elegant syntax
  7. 动态类型 dynamic typing(区别于静态声明)
  8. 强制缩进 (后续学习过程特别注意,缩进层级错了会导致解释器无法理解你写的代码)
  9. 垃圾回收机制
  10. 简单、易学、易用
  11. 跨平台(树莓派等嵌入式linux设备、esp8266、windows、osx、linux,32位和64位)
  12. 健壮
  13. 拥有健全的生态系统

为什么选择python来做数据科学

我们已经了解过python的特性,其中简单提到生态系统。

python拥有一套完善的生态系统,拥有强大的科学栈(Scientific Stack)。
简单说,科学栈就是很多库的集合,比如我们后续会一起学习的numpy、scipy、matplotlib、pandas ……。

其中的scipy实现了科学和金融中常用的重要功能。具体后续教程中一起学习。

对比java,python易学易用,代码可读性很高,免编译。

对比nodejs,python 科学栈非常诱人。

对比matlab, python 的大部分科学栈是免费的。同时python有很多现成的科学计算套件非常方便(比如pandas,spider)

准备实践环境

在对python 有了简单认识后,我们开始着手准备实验环境。

在windows上安装python

  1. python官网获取安装文件(64位32位)
  2. 以我的64位win10安装过程为例


    QQ截图20170403231025.png

    QQ截图20170403231240.png

    QQ截图20170403231455.png

    QQ截图20170403231512.png

    QQ截图20170403232104.png
  1. 检查环境变量是否生效,win键+R ==>>输入 cmd 回车==>>依次执行如下命令测试
python -V
pip -v

如果出现如下结果,恭喜你,python3.6.1版已经被安装到你的电脑上啦。

Microsoft Windows [版本 10.0.14393]
(c) 2016 Microsoft Corporation。保留所有权利。

C:\Users\ipaddr>python -V
Python 3.6.1

C:\Users\ipaddr>pip -V
pip 9.0.1 from d:\codelang\python36\lib\site-packages (python 3.6)

C:\Users\ipaddr>

选择一款顺手的文本编辑器

选择一款带代码高亮甚至代码提示的代码编辑器,可以有效提高效率。

这里推荐几款
vscode 是微软开源的一款轻量级代码编辑器,适当添加插件即可成为开发神器进入官网,点击Download按钮

sublime text 3 下载64位|下载32位

atom 下载64位|下载32位

notepad++ 下载64位|下载32位

准备科学栈

这里主要演示如何使用pip 安装 一些包(包可以是一个库或多个库的集合)

我们计划后续边学边准备我们自己的科学栈

先来安装一个ipython吧,这里有必要简单介绍一下ipython,IPython 可以认为是一个开发工具,类似于我之前提到的spyder.

pip install ipython

结果如下

C:\Users\ipaddr>pip install ipython
Collecting ipython
  Downloading ipython-5.3.0-py3-none-any.whl (750kB)
    100% |████████████████████████████████| 757kB 917kB/s
Collecting pygments (from ipython)
  Downloading Pygments-2.2.0-py2.py3-none-any.whl (841kB)
    100% |████████████████████████████████| 849kB 854kB/s
Collecting traitlets>=4.2 (from ipython)
  Downloading traitlets-4.3.2-py2.py3-none-any.whl (74kB)
    100% |████████████████████████████████| 81kB 2.5MB/s
Collecting colorama; sys_platform == "win32" (from ipython)
  Using cached colorama-0.3.7-py2.py3-none-any.whl
Collecting simplegeneric>0.8 (from ipython)
  Downloading simplegeneric-0.8.1.zip
Requirement already satisfied: setuptools>=18.5 in d:\codelang\python36\lib\site-packages (from ipython)
Collecting prompt-toolkit<2.0.0,>=1.0.4 (from ipython)
  Downloading prompt_toolkit-1.0.14-py3-none-any.whl (248kB)
    100% |████████████████████████████████| 256kB 1.7MB/s
Collecting decorator (from ipython)
  Downloading decorator-4.0.11-py2.py3-none-any.whl
Collecting pickleshare (from ipython)
  Downloading pickleshare-0.7.4-py2.py3-none-any.whl
Collecting ipython-genutils (from traitlets>=4.2->ipython)
  Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl
Collecting six (from traitlets>=4.2->ipython)
  Using cached six-1.10.0-py2.py3-none-any.whl
Collecting wcwidth (from prompt-toolkit<2.0.0,>=1.0.4->ipython)
  Downloading wcwidth-0.1.7-py2.py3-none-any.whl
Installing collected packages: pygments, ipython-genutils, decorator, six, traitlets, colorama, simplegeneric, wcwidth, prompt-toolkit, pickleshare, ipython
  Running setup.py install for simplegeneric ... done
Successfully installed colorama-0.3.7 decorator-4.0.11 ipython-5.3.0 ipython-genutils-0.2.0 pickleshare-0.7.4 prompt-toolkit-1.0.14 pygments-2.2.0 simplegeneric-0.8.1 six-1.10.0 traitlets-4.3.2 wcwidth-0.1.7

C:\Users\ipaddr>

这样我们就安装好了ipython。从结果可以看到,新版本的pip已经可以自动安装该package所依赖的package

后续我们会经常这样安装package。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,290评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,399评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,021评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,034评论 0 207
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,412评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,651评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,902评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,605评论 0 199
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,339评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,586评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,076评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,400评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,060评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,083评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,851评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,685评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,595评论 2 270

推荐阅读更多精彩内容